#ifndef MAPAABSTRACTO_H
#define MAPAABSTRACTO_H

#include "imapa.h"
#include "texturadefondo.h"
#include "ciudades.h"
#include "ciudad.h"
#include "math3d.h"
#include "ray_cyl.h"

using namespace ui::ejemplo;

namespace ui {
namespace tablero {
namespace mapa {

class MapaAbstracto: public IMapa {

public:

	MapaAbstracto(TexturaDeFondo &p_TexturaDeFondo, Ciudades &p_Ciudades);
	~MapaAbstracto();

protected:

	double m_fMouseX;
	double m_fMouseY;
	TexturaDeFondo &m_TexturaDeFondo;
	Ciudades &m_Ciudades;
	int m_iAncho, m_iAltura;

	virtual void dibujarPlaneta() = 0;
	virtual void dibujarCiudades() = 0;

	void dibujar();
};

}
}
}

#endif
